home *** CD-ROM | disk | FTP | other *** search
/ MacAddict 83 / MacAddict_083_2003-07.iso / mac / Software / Development / VLC Source 0.5.3.dmg / Makefile.am < prev    next >
Makefile  |  2003-04-07  |  21KB  |  691 lines

  1. ###############################################################################
  2. # Automake targets and declarations
  3. ###############################################################################
  4.  
  5. NULL =
  6.  
  7. # SUBDIRS stores the directories where a "make" is required when building
  8. # something. DIST_SUBDIRS stores the directories where nothing is built but
  9. # which have makefiles with distribution information.
  10. SUBDIRS = po intl m4 share
  11. DIST_SUBDIRS = $(SUBDIRS) modules src debian doc ipkg lib autotools
  12.  
  13. EXTRA_DIST = \
  14.     HACKING \
  15.     INSTALL.win32 \
  16.     MAINTAINERS \
  17.     Modules.am \
  18.     README.MacOSX.rtf \
  19.     bootstrap \
  20.     configure.ac.in \
  21.     install-win32 \
  22.     src/extras/COPYING \
  23.     toolbox \
  24.     vlc.spec \
  25.     $(NULL)
  26.  
  27. MOSTLYCLEANFILES =
  28. BUILT_SOURCES =
  29. SUFFIXES = 
  30.  
  31. # List of programs, libraries and headers that need to be built and/or
  32. # distributed. Initialized to empty because we'll use += later.
  33. bin_PROGRAMS =
  34.  
  35. lib_LIBRARIES = 
  36. libvlc_LIBRARIES =
  37. noinst_LIBRARIES =
  38.  
  39. noinst_HEADERS =
  40.  
  41. # Tell aclocal to use -I m4. Wonder if it really works.
  42. ACLOCAL_AMFLAGS = -I m4
  43.  
  44. # XXX: these flags could be set in configure.ac.in, but we set them here
  45. # because old versions of automake don't support them in configure.ac.
  46. AUTOMAKE_OPTIONS = dist-bzip2 subdir-objects
  47.  
  48. ###############################################################################
  49. # Compilation flags for debug mode, profiling, and others
  50. ###############################################################################
  51.  
  52. # Standard flags used everywhere to build things in the distribution. Some
  53. # of them are empty but might be extended later in the Makefile. *_default
  54. # is the default flag list for all files in the distribution, for instance
  55. # the vlc code. *_pic is for PIC code, such as the Mozilla plugin. *_plugin
  56. # is for plugin code, *_builtin is for builtin code, and *_builtin_pic is
  57. # for PIC builtin code, for instance builtin modules in the mozilla plugin.
  58.  
  59. CPPFLAGS_default = -I$(top_srcdir)/include
  60. CFLAGS_default = 
  61. CXXFLAGS_default = 
  62. OBJCFLAGS_default = 
  63. LDFLAGS_default =
  64.  
  65. CPPFLAGS_pic = $(CPPFLAGS_default)
  66. CFLAGS_pic = $(CFLAGS_default) @CFLAGS_pics@
  67. CXXFLAGS_pic = $(CXXFLAGS_default) @CFLAGS_pics@
  68. OBJCFLAGS_pic = $(OBJCFLAGS_default) @CFLAGS_pics@
  69. LDFLAGS_pic = $(LDFLAGS_default)
  70.  
  71. CPPFLAGS_plugin = $(CPPFLAGS_default) -D__VLC__ -D__PLUGIN__
  72. CFLAGS_plugin = $(CFLAGS_default) @CFLAGS_plugins@
  73. CXXFLAGS_plugin = $(CXXFLAGS_default) @CFLAGS_plugins@
  74. OBJCFLAGS_plugin = $(OBJCFLAGS_default) @CFLAGS_plugins@
  75. LDFLAGS_plugin = @LDFLAGS_plugins@
  76.  
  77. CPPFLAGS_builtin = $(CPPFLAGS_default) -D__VLC__ -D__BUILTIN__
  78. CFLAGS_builtin = $(CFLAGS_default) @CFLAGS_builtins@
  79. CXXFLAGS_builtin = $(CXXFLAGS_default) @CFLAGS_builtins@
  80. OBJCFLAGS_builtin = $(OBJCFLAGS_default) @CFLAGS_builtins@
  81. LDFLAGS_builtin =
  82. L_builtin =
  83.  
  84. CPPFLAGS_builtin_pic = $(CPPFLAGS_builtin) $(CPPFLAGS_pic)
  85. CFLAGS_builtin_pic = $(CFLAGS_builtin) $(CFLAGS_pic)
  86. CXXFLAGS_builtin_pic = $(CXXFLAGS_builtin) $(CXXFLAGS_pic)
  87. OBJCFLAGS_builtin_pic = $(OBJCFLAGS_builtin) $(OBJCFLAGS_pic)
  88. LDFLAGS_builtin_pic = $(LDFLAGS_builtin) $(LDFLAGS_pic)
  89. L_builtin_pic = $(L_builtin) $(L_pic)
  90.  
  91. # On Linux and Solaris, activate 64-bit off_t (by default under BSD)
  92. CPPFLAGS_default += -D_FILE_OFFSET_BITS=64 -D__USE_UNIX98 -D_LARGEFILE64_SOURCE
  93. CPPFLAGS_default += -D_REENTRANT -D_THREAD_SAFE
  94. CPPFLAGS_default += -D_GNU_SOURCE
  95.  
  96. # Gettext support
  97. CPPFLAGS_default += -DLOCALEDIR=\"$(datadir)/locale\"
  98.  
  99. # Data and plugin location
  100. CPPFLAGS_default += -DDATA_PATH=\"@prefix@/share/vlc\"
  101. CPPFLAGS_default += -DPLUGIN_PATH=\"@prefix@/lib/vlc\"
  102.  
  103. # Conditional flags that get added to *FLAGS_default
  104. if RELEASE
  105. CPPFLAGS_release = -DHAVE_RELEASE
  106. endif
  107. if DEBUG
  108. CPPFLAGS_debug = -DDEBUG
  109. CFLAGS_debug = -g
  110. endif
  111. if GPROF
  112. CPPFLAGS_gprof = -DGPROF
  113. CFLAGS_gprof = -finstrument-functions
  114. endif
  115. if CPROF
  116. CPPFLAGS_cprof = -DCPROF
  117. CFLAGS_cprof = -pg
  118. endif
  119. if OPTIM
  120. CFLAGS_optim = @CFLAGS_OPTIM@ @CFLAGS_TUNING@
  121. if DEBUG
  122. else
  123. if GPROF
  124. else
  125. if CPROF
  126. else
  127. CFLAGS_nodebug = @CFLAGS_OPTIM_NODEBUG@
  128. endif
  129. endif
  130. endif
  131. else
  132. # !OPTIM
  133. CFLAGS_optim = @CFLAGS_NOOPTIM@
  134. endif
  135.  
  136. CPPFLAGS_default += $(CPPFLAGS_release) \
  137.         $(CPPFLAGS_debug) $(CPPFLAGS_gprof) $(CPPFLAGS_cprof)
  138. CFLAGS_default += $(CFLAGS_optim) $(CFLAGS_nodebug) \
  139.         $(CFLAGS_debug) $(CFLAGS_gprof) $(CFLAGS_cprof)
  140. CXXFLAGS_default += $(CFLAGS_optim) $(CFLAGS_nodebug) \
  141.         $(CFLAGS_debug) $(CFLAGS_gprof) $(CFLAGS_cprof)
  142. OBJCFLAGS_default += $(CFLAGS_optim) $(CFLAGS_nodebug) \
  143.         $(CFLAGS_debug) $(CFLAGS_gprof) $(CFLAGS_cprof)
  144.  
  145. ###############################################################################
  146. # Headers
  147. ###############################################################################
  148.  
  149. BUILT_SOURCES += \
  150.     include/vlc_symbols.h \
  151.     src/misc/modules_builtin.h \
  152.     src/misc/modules_plugin.h \
  153.     $(NULL)
  154.  
  155. pkgincludedir = $(includedir)/vlc
  156.  
  157. dist_pkginclude_HEADERS = \
  158.     include/vlc/vlc.h \
  159.     include/vlc/aout.h \
  160.     include/vlc/vout.h \
  161.     include/vlc/sout.h \
  162.     include/vlc/decoder.h \
  163.     include/vlc/input.h \
  164.     include/vlc/intf.h \
  165.     $(NULL)
  166.  
  167. noinst_HEADERS += $(HEADERS_include) $(HEADERS_include_built)
  168.  
  169. HEADERS_include = \
  170.     include/aout_internal.h \
  171.     include/audio_output.h \
  172.     include/beos_specific.h \
  173.     include/configuration.h \
  174.     include/darwin_specific.h \
  175.     include/codecs.h \
  176.     include/error.h \
  177.     include/encoder.h \
  178.     include/input_ext-dec.h \
  179.     include/input_ext-intf.h \
  180.     include/input_ext-plugins.h \
  181.     include/interface.h \
  182.     include/intf_eject.h \
  183.     include/iso_lang.h \
  184.     include/httpd.h \
  185.     include/main.h \
  186.     include/mmx.h \
  187.     include/modules.h \
  188.     include/modules_inner.h \
  189.     include/mtime.h \
  190.     include/netutils.h \
  191.     include/network.h \
  192.     include/os_specific.h \
  193.     include/stream_control.h \
  194.     include/stream_output.h \
  195.     include/variables.h \
  196.     include/video.h \
  197.     include/video_output.h \
  198.     include/vlc_common.h \
  199.     include/vlc_config.h \
  200.     include/vlc_cpu.h \
  201.     include/vlc_messages.h \
  202.     include/vlc_objects.h \
  203.     include/vlc_playlist.h \
  204.     include/vlc_threads.h \
  205.     include/vlc_threads_funcs.h \
  206.     include/win32_specific.h \
  207.     include/osd.h \
  208.     $(NULL)
  209.  
  210. HEADERS_include_built = \
  211.     include/vlc_symbols.h \
  212.     $(NULL)
  213.  
  214. include/vlc_symbols.h: Makefile $(HEADERS_include)
  215.     ./toolbox --update-includes $(BUILTINS)
  216.  
  217. src/misc/modules_plugin.h: Makefile src/misc/modules_plugin.h.in $(HEADERS_include)
  218.     ./toolbox --update-includes $(BUILTINS)
  219.  
  220. src/misc/modules_builtin.h: Makefile src/misc/modules_builtin.h.in
  221.     ./toolbox --update-includes $(BUILTINS)
  222.  
  223. # These dependencies are mandatory
  224. $(SOURCES): include/vlc_symbols.h
  225. $(SOURCES_libvlc): src/misc/modules_plugin.h src/misc/modules_builtin.h $(LIB_intl)
  226.  
  227. ###############################################################################
  228. # Optional libintl - FIXME, bad dependencies
  229. ###############################################################################
  230.  
  231. intl/libintl.a: FORCE
  232.     cd intl && $(MAKE)
  233.  
  234. if BUILD_INTL
  235. LIB_intl = intl/libintl.a
  236. endif
  237.  
  238. ###############################################################################
  239. # MacOS X project
  240. ###############################################################################
  241.  
  242. EXTRA_DIST += \
  243.     extras/MacOSX/Resources/English.lproj/MainMenu.nib/classes.nib \
  244.     extras/MacOSX/Resources/English.lproj/MainMenu.nib/info.nib \
  245.     extras/MacOSX/Resources/English.lproj/MainMenu.nib/objects.nib \
  246.     extras/MacOSX/Resources/English.lproj/InfoPlist.strings \
  247.     extras/MacOSX/Resources/English.lproj/vlc.scriptTerminology \
  248.     extras/MacOSX/Resources/divx.icns \
  249.     extras/MacOSX/Resources/generic.icns \
  250.     extras/MacOSX/Resources/mpeg.icns \
  251.     extras/MacOSX/Resources/mpeg1.icns \
  252.     extras/MacOSX/Resources/mpeg2.icns \
  253.     extras/MacOSX/Resources/mpeg4.icns \
  254.     extras/MacOSX/Resources/vlc.icns \
  255.     extras/MacOSX/Resources/back.png \
  256.     extras/MacOSX/Resources/begin.png \
  257.     extras/MacOSX/Resources/end.png \
  258.     extras/MacOSX/Resources/forw.png \
  259.     extras/MacOSX/Resources/list.png \
  260.     extras/MacOSX/Resources/pause.png \
  261.     extras/MacOSX/Resources/play.png \
  262.     extras/MacOSX/Resources/prefs.png \
  263.     extras/MacOSX/Resources/slow.png \
  264.     extras/MacOSX/Resources/stop.png \
  265.     extras/MacOSX/Resources/vlc_hg.png \
  266.     extras/MacOSX/Resources/vlc.scriptSuite \
  267.     extras/MacOSX/Resources/README \
  268.     extras/MacOSX/vlc.pbproj/project.pbxproj \
  269.     extras/MacOSX/macosx-dmg \
  270.     $(NULL)
  271.  
  272. ###############################################################################
  273. # MS Visual Studio and eMbedded Visual Studio projects
  274. ###############################################################################
  275.  
  276. EXTRA_DIST += \
  277.     msvc/vlc.dsw \
  278.     msvc/libvlc.dsp.in \
  279.     msvc/plugins.dsp.in \
  280.     msvc/vlc.dsp.in \
  281.     msvc/config.h.in \
  282.     msvc/modules_builtin_msvc.h \
  283.     evc/vlc.vcw \
  284.     evc/libvlc.vcp.in \
  285.     evc/vlc.vcp.in \
  286.     evc/plugins.vcp.in \
  287.     evc/vlc.c \
  288.     evc/config.h.in \
  289.     evc/modules_builtin_evc.h \
  290.     $(NULL)
  291.  
  292. show-libvlc-sources: FORCE
  293.     @echo X: $(SOURCES_libvlc_common) $(SOURCES_libvlc_win32) $(SOURCES_libvlc_dirent) $(SOURCES_libvlc_getopt)
  294.  
  295. show-libvlc-headers: FORCE
  296.     @echo X: $(HEADERS_include) $(HEADERS_include_built)
  297.  
  298. show-libvlc-pkg-headers: FORCE
  299.     @echo X: $(dist_pkginclude_HEADERS)
  300.  
  301. ###############################################################################
  302. # Building libvlc
  303. ###############################################################################
  304.  
  305. bin_SCRIPTS = vlc-config
  306.  
  307. lib_LIBRARIES += lib/libvlc.a $(LIBRARIES_libvlc_pic)
  308.  
  309. lib_libvlc_a_SOURCES = $(SOURCES_libvlc)
  310. lib_libvlc_a_CFLAGS = $(CPPFLAGS_default) -D__VLC__ $(CFLAGS_default) @CFLAGS_vlc@
  311. lib_libvlc_a_CXXFLAGS = $(CPPFLAGS_default) -D__VLC__ $(CXXFLAGS_default)
  312. lib_libvlc_a_OBJCFLAGS = $(CPPFLAGS_default) -D__VLC__ $(OBJCFLAGS_default)
  313.  
  314. lib_libvlc_pic_a_SOURCES = $(SOURCES_libvlc)
  315. lib_libvlc_pic_a_CFLAGS = $(CPPFLAGS_pic) -D__VLC__ $(CFLAGS_pic) @CFLAGS_vlc@
  316. lib_libvlc_pic_a_CXXFLAGS = $(CPPFLAGS_pic) -D__VLC__ $(CXXFLAGS_pic)
  317. lib_libvlc_pic_a_OBJCFLAGS = $(CPPFLAGS_pic) -D__VLC__ $(OBJCFLAGS_pic)
  318.  
  319. if HAVE_BEOS
  320. OPT_SOURCES_libvlc_beos = $(SOURCES_libvlc_beos)
  321. endif
  322. if HAVE_DARWIN
  323. OPT_SOURCES_libvlc_darwin = $(SOURCES_libvlc_darwin)
  324. endif
  325. if HAVE_WIN32
  326. OPT_SOURCES_libvlc_win32 = $(SOURCES_libvlc_win32)
  327. endif
  328. if BUILD_DIRENT
  329. OPT_SOURCES_libvlc_dirent = $(SOURCES_libvlc_dirent)
  330. endif
  331. if BUILD_GETOPT
  332. OPT_SOURCES_libvlc_getopt = $(SOURCES_libvlc_getopt)
  333. endif
  334. if BUILD_MOZILLA
  335. LIBRARIES_libvlc_pic = lib/libvlc_pic.a
  336. endif
  337.  
  338. EXTRA_DIST += \
  339.     $(SOURCES_libvlc_beos) \
  340.     $(SOURCES_libvlc_darwin) \
  341.     $(SOURCES_libvlc_win32) \
  342.     $(SOURCES_libvlc_dirent) \
  343.     $(SOURCES_libvlc_getopt) \
  344.     $(NULL)
  345.  
  346. SOURCES_libvlc_beos = \
  347.     src/misc/beos_specific.cpp \
  348.     $(NULL)
  349.  
  350. SOURCES_libvlc_darwin = \
  351.     src/misc/darwin_specific.m \
  352.     $(NULL)
  353.  
  354. SOURCES_libvlc_win32 = \
  355.     src/misc/win32_specific.c \
  356.     $(NULL)
  357.  
  358. SOURCES_libvlc_dirent = \
  359.     src/extras/dirent.c \
  360.     src/extras/dirent.h \
  361.     $(NULL)
  362.  
  363. SOURCES_libvlc_getopt = \
  364.     src/extras/getopt.c \
  365.     src/extras/getopt.h \
  366.     src/extras/getopt1.c \
  367.     $(NULL)
  368.  
  369. SOURCES_libvlc_common = \
  370.     src/libvlc.c \
  371.     src/libvlc.h \
  372.     src/interface/interface.c \
  373.     src/interface/intf_eject.c \
  374.     src/playlist/playlist.c \
  375.     src/input/input.c \
  376.     src/input/input_ext-plugins.c \
  377.     src/input/input_ext-dec.c \
  378.     src/input/input_ext-intf.c \
  379.     src/input/input_dec.c \
  380.     src/input/input_programs.c \
  381.     src/input/input_clock.c \
  382.     src/input/input_info.c \
  383.     src/video_output/video_output.c \
  384.     src/video_output/vout_pictures.c \
  385.     src/video_output/vout_pictures.h \
  386.     src/video_output/video_text.c \
  387.     src/video_output/video_text.h \
  388.     src/video_output/vout_subpictures.c \
  389.     src/audio_output/common.c \
  390.     src/audio_output/dec.c \
  391.     src/audio_output/filters.c \
  392.     src/audio_output/input.c \
  393.     src/audio_output/mixer.c \
  394.     src/audio_output/output.c \
  395.     src/audio_output/intf.c \
  396.     src/stream_output/stream_output.c \
  397.     src/misc/mtime.c \
  398.     src/misc/modules.c \
  399.     src/misc/threads.c \
  400.     src/misc/cpu.c \
  401.     src/misc/configuration.c \
  402.     src/misc/netutils.c \
  403.     src/misc/iso_lang.c \
  404.     src/misc/iso-639_def.h \
  405.     src/misc/messages.c \
  406.     src/misc/objects.c \
  407.     src/misc/variables.c \
  408.     src/misc/error.c \
  409.     src/extras/libc.c \
  410.     $(NULL)
  411.  
  412. SOURCES_libvlc = \
  413.     $(SOURCES_libvlc_common) \
  414.     $(OPT_SOURCES_libvlc_beos) \
  415.     $(OPT_SOURCES_libvlc_darwin) \
  416.     $(OPT_SOURCES_libvlc_win32) \
  417.     $(OPT_SOURCES_libvlc_dirent) \
  418.     $(OPT_SOURCES_libvlc_getopt) \
  419.     $(NULL)
  420.  
  421. ###############################################################################
  422. # Building vlc
  423. ###############################################################################
  424.  
  425. bin_PROGRAMS += vlc
  426.  
  427. vlc_SOURCES = src/vlc.c
  428.  
  429. # @AUTOMAKE_SUCKS@ gets expanded to $(L_builtin) $(LDFLAGS_builtin)
  430. # but we don't write it directly, otherwise automake will go amok and eat all
  431. # the memory because of its 2^N crap algorithm. So we fool him. Nuahaha.
  432. vlc_LDADD = lib/libvlc.a $(LDFLAGS_vlc) \
  433.             $(DATA_win32_rc) $(LIB_intl) @AUTOMAKE_SUCKS@
  434. vlc_CFLAGS = $(CPPFLAGS_default) $(CFLAGS_default)
  435.  
  436. # We use DEPENDENCIES_vlc instead of vlc_DEPENDENCIES because of an
  437. # old automake-1.5 bug (automake/279).
  438. DEPENDENCIES_vlc = lib/libvlc.a $(L_builtin) $(DATA_win32_rc) $(LIB_intl)
  439.  
  440. vlc$(EXEEXT): $(vlc_OBJECTS) $(DEPENDENCIES_vlc)
  441.     @rm -f vlc$(EXEEXT)
  442.     $(LINK) $(vlc_LDFLAGS) $(vlc_OBJECTS) $(vlc_LDADD) $(LIBS)
  443. if HAVE_BEOS
  444.     xres -o $@ ./share/vlc_beos.rsrc
  445.     mimeset -f $@
  446. endif
  447.  
  448. # Install the symlinks
  449. install-exec-local:
  450.     for i in dummy $(ALIASES) ; do if test "x$$i" != "xdummy" ; then \
  451.         rm -f $(DESTDIR)$(bindir)/$$i && \
  452.         ln -s vlc $(DESTDIR)$(bindir)/$$i ; \
  453.     fi ; done
  454.  
  455. if HAVE_DARWIN
  456. # Create the MacOS X app
  457. vlc_app_DATA = VLC.app
  458. vlc_appdir = $(bindir)
  459. VLC.app: vlc $(PLUGIN_FILES)
  460.     rm -Rf VLC.app
  461.     cd extras/MacOSX ; pbxbuild | grep -v '^[ \t]' | grep -v "^$$"
  462.     cp -r extras/MacOSX/build/vlc.bundle ./VLC.app
  463.     $(INSTALL) -d VLC.app/Contents/MacOS
  464.     $(INSTALL) vlc VLC.app/Contents/MacOS/VLC
  465.     $(INSTALL) -d VLC.app/Contents/MacOS/modules
  466.     for i in dummy $(PLUGIN_FILES) ; do if test "x$$i" != "xdummy" ; then \
  467.         $(INSTALL) $$i VLC.app/Contents/MacOS/modules/ ; \
  468.     fi ; done
  469.     $(INSTALL) -d VLC.app/Contents/MacOS/share
  470.     $(INSTALL) -m 644 share/*.psf share/*.rle VLC.app/Contents/MacOS/share
  471.     $(INSTALL) -d VLC.app/Contents/MacOS/locale
  472.     for i in $(ALL_LINGUAS); do \
  473.         mkdir -p VLC.app/Contents/MacOS/locale/$${i}/LC_MESSAGES ; \
  474.         cp po/$${i}.gmo VLC.app/Contents/MacOS/locale/$${i}/LC_MESSAGES/vlc.mo || true ; \
  475.         mkdir -p VLC.app/Contents/Resources/$${i}.lproj ; \
  476.         ln -sf ../English.lproj/InfoPlist.strings VLC.app/Contents/Resources/$${i}.lproj ; \
  477.         ln -sf ../English.lproj/MainMenu.nib VLC.app/Contents/Resources/$${i}.lproj ; \
  478.         ln -sf ../English.lproj/vlc.scriptTerminology VLC.app/Contents/Resources/$${i}.lproj ; \
  479.     done
  480.     echo -n "APPLVLC#" >| VLC.app/Contents/PkgInfo
  481. endif
  482.  
  483. if HAVE_WIN32
  484. DATA_win32_rc = $(noinst_share_vlc_win32_rc_DATA)
  485. noinst_share_vlc_win32_rc_DATA = share/vlc_win32_rc.$(OBJEXT)
  486. noinst_share_vlc_win32_rcdir = $(libdir)
  487. share/vlc_win32_rc.$(OBJEXT): share/vlc_win32_rc.rc
  488.     $(WINDRES) --include-dir share -i $< -o $@
  489. endif
  490.  
  491. ###############################################################################
  492. # Building architecture-specific binary packages
  493. ###############################################################################
  494.  
  495. # XXX: this rule is probably only useful to you if you have exactly
  496. # the same setup as me. Contact sam@zoy.org if you need to use it.
  497. #
  498. # Check that tmp isn't in the way
  499. package-win32:
  500.     @if test -e tmp; then \
  501.         echo "Error: please remove ./tmp, it is in the way"; false; \
  502.     else \
  503.         echo "OK."; mkdir tmp; \
  504.     fi
  505. # Create installation script
  506.     cp install-win32 tmp/nsi
  507. # Copy relevant files
  508.     cp vlc.exe tmp/ 
  509.     $(STRIP) tmp/vlc.exe
  510.     cp INSTALL.win32 tmp/INSTALL.txt ; unix2dos tmp/INSTALL.txt
  511.     for file in AUTHORS MAINTAINERS THANKS NEWS COPYING README ; \
  512.             do cp $$file tmp/$${file}.txt ; \
  513.             unix2dos tmp/$${file}.txt ; done
  514.  
  515.     mkdir tmp/plugins
  516.     for i in dummy $(PLUGIN_FILES) ; do if test "x$$i" != "xdummy" ; then \
  517.         $(INSTALL) $$i tmp/plugins/ ; \
  518.     fi ; done
  519.  
  520.     for i in dummy tmp/plugins/*$(LIBEXT) ; \
  521.         do if test $$i != tmp/plugins/libwin32_plugin$(LIBEXT) \
  522.         -a $$i != dummy ; then $(STRIP) $$i ; fi ; done
  523.  
  524.     mkdir tmp/share
  525.     cp share/*.rle tmp/share/ ;
  526.  
  527.     mkdir tmp/locale
  528.     for i in $(ALL_LINGUAS); do \
  529.         mkdir -p tmp/locale/$${i}/LC_MESSAGES ; \
  530.         cp po/$${i}.gmo tmp/locale/$${i}/LC_MESSAGES/vlc.mo || true ; \
  531.     done
  532.  
  533.     mkdir -p tmp/skins/default
  534.     for i in share/skins/default/*.*; do \
  535.         cp $$i tmp/skins/default/ || true ; \
  536.     done
  537.     for i in doc/skins/*.txt; do \
  538.         cp $$i tmp/skins/ || true ; \
  539.     done
  540.  
  541.     cd doc/faq ; $(MAKE) html ; cd ../.. ;
  542.     cp doc/faq/index.html tmp/FAQ.htm ;
  543.  
  544. # Create package 
  545.     wine ~/.wine/fake_windows/Program\ Files/NSIS/makensis.exe -- /DVERSION=${VERSION} tmp/nsi
  546. # Clean up
  547.     rm -Rf tmp
  548.  
  549. package-beos:
  550. # Check that tmp isn't in the way
  551.     @if test -e tmp; then \
  552.         echo "Error: please remove ./tmp, it is in the way"; false; \
  553.     else \
  554.         echo "OK."; mkdir tmp; \
  555.     fi
  556.     
  557. # Create dir
  558.     mkdir -p tmp/vlc/share
  559. # Copy relevant files
  560.     cp vlc tmp/vlc/
  561.     $(STRIP) tmp/vlc/vlc
  562.     xres -o tmp/vlc/vlc ./share/vlc_beos.rsrc
  563.     cp AUTHORS COPYING ChangeLog README THANKS NEWS tmp/vlc/
  564.     for file in default8x16.psf default8x9.psf ; \
  565.         do cp share/$$file tmp/vlc/share/ ; done
  566.     mkdir tmp/vlc/plugins
  567.     for i in dummy $(PLUGIN_FILES) ; do if test "x$$i" != "xdummy" ; then \
  568.         $(INSTALL) $$i tmp/vlc/plugins/ ; \
  569.     fi ; done
  570.     for i in dummy tmp/vlc/plugins/*$(LIBEXT) ; do if test $$i != dummy ; then $(STRIP) $$i ; fi ; done
  571. # Create package 
  572.     mv tmp/vlc tmp/vlc-${VERSION}
  573.     (cd tmp ; find vlc-${VERSION} | \
  574.     zip -9 -@ vlc-${VERSION}-BeOS-x86.zip )
  575.     mv tmp/vlc-${VERSION}-BeOS-x86.zip .
  576. # Clean up
  577.     rm -Rf tmp
  578.  
  579. package-macosx:
  580. # Check that tmp isn't in the way
  581.     @if test -e tmp; then \
  582.         echo "Error: please remove ./tmp, it is in the way"; false; \
  583.     else \
  584.         echo "OK."; mkdir tmp; \
  585.     fi
  586.  
  587. # Copy relevant files 
  588.     cp -R VLC.app tmp/
  589.     cp AUTHORS COPYING ChangeLog README README.MacOSX.rtf THANKS NEWS tmp/
  590.  
  591. # Create disk image 
  592.     ./extras/MacOSX/macosx-dmg 18 "vlc-${VERSION}" tmp/* 
  593.  
  594. # Clean up
  595.     rm -Rf tmp
  596.  
  597. ###############################################################################
  598. # Building the Mozilla plugin
  599. ###############################################################################
  600.  
  601. noinst_LIBRARIES += $(noinst_LIBRARIES_mozilla)
  602.  
  603. MOSTLYCLEANFILES += $(LIBRARIES_mozilla)
  604.  
  605. EXTRA_DIST += $(SOURCES_mozilla) mozilla/vlcintf.idl
  606.  
  607. BUILT_SOURCES += $(BUILT_SOURCES_mozilla)
  608.  
  609. SOURCES_mozilla = \
  610.     mozilla/vlcshell.cpp \
  611.     mozilla/vlcplugin.cpp \
  612.     mozilla/vlcplugin.h \
  613.     mozilla/vlcpeer.cpp \
  614.     mozilla/vlcpeer.h \
  615.     mozilla/classinfo.h \
  616.     $(SOURCES_mozilla_win32) \
  617.     $(SOURCES_mozilla_unix) \
  618.     $(NULL)
  619.  
  620. # Under Win32, Mozilla plugins need to be named NP******.DLL, but under Unix
  621. # the common naming scheme is lib******plugin.so. Also, we need npwin.cpp
  622. # under Win32 and npunix.c under Unix.
  623. if HAVE_WIN32
  624. LIBRARIES_mozilla = mozilla/npvlc$(LIBEXT)
  625. SOURCES_mozilla_win32 = mozilla/npwin.cpp
  626. CPPFLAGS_mozilla_EXTRA = -DXP_WIN -DXP_WIN32
  627. else
  628. LIBRARIES_mozilla = mozilla/libvlcplugin$(LIBEXT)
  629. SOURCES_mozilla_unix = mozilla/npunix.c
  630. endif
  631.  
  632. if BUILD_MOZILLA
  633. if UNTRUE
  634. noinst_LIBRARIES_mozilla = mozilla/libplugin.a
  635. endif
  636.  
  637. mozilla_libplugin_a_SOURCES = $(SOURCES_mozilla)
  638. mozilla_libplugin_a_CFLAGS = $(CPPFLAGS_pic) $(CFLAGS_pic) \
  639.                              $(CPPFLAGS_mozilla) $(CFLAGS_mozilla) \
  640.                              $(CPPFLAGS_mozilla_EXTRA)
  641. mozilla_libplugin_a_CXXFLAGS = $(CPPFLAGS_pic) $(CXXFLAGS_pic) \
  642.                                $(CPPFLAGS_mozilla) $(CXXFLAGS_mozilla) \
  643.                                $(CPPFLAGS_mozilla_EXTRA)
  644. mozilla_libplugin_a_DEPENDENCIES = lib/libvlc_pic.a $(L_builtin_pic) $(DATA_npvlc_rc)
  645.  
  646. BUILT_SOURCES_mozilla = mozilla/vlcintf.h
  647. $(SOURCES_mozilla): mozilla/vlcintf.h
  648.  
  649. mozilla_plugin_DATA = $(LIBRARIES_mozilla)
  650. mozilla_plugindir = $(libdir)/mozilla/plugins
  651. $(LIBRARIES_mozilla): $(mozilla_libplugin_a_OBJECTS) \
  652.                       $(mozilla_libplugin_a_DEPENDENCIES) \
  653.                       $(L_builtin_pic)
  654.     $(CXXLINK) $(mozilla_libplugin_a_OBJECTS) $(DATA_npvlc_rc) \
  655.         lib/libvlc_pic.a $(L_builtin_pic) -shared $(LDFLAGS) \
  656.         $(LDFLAGS_vlc) $(LDFLAGS_mozilla) $(LDFLAGS_builtin_pic)
  657.  
  658. mozilla_vlcintf_xpt_DATA = mozilla/vlcintf.xpt
  659. mozilla_vlcintf_xptdir = $(libdir)/mozilla/components
  660. mozilla/vlcintf.xpt: Makefile mozilla/vlcintf.idl
  661.     $(XPIDL) -I/usr/share/idl/mozilla -m typelib \
  662.         -o mozilla/vlcintf mozilla/vlcintf.idl
  663.  
  664. mozilla/vlcintf.h: Makefile mozilla/vlcintf.idl
  665.     $(XPIDL) -I/usr/share/idl/mozilla -m header \
  666.         -o mozilla/vlcintf mozilla/vlcintf.idl
  667.  
  668. if HAVE_WIN32
  669. DATA_npvlc_rc = $(noinst_mozilla_npvlc_rc_DATA)
  670. noinst_mozilla_npvlc_rc_DATA = mozilla/npvlc_rc.$(OBJEXT)
  671. noinst_mozilla_npvlc_rcdir = $(libdir)
  672. mozilla/npvlc_rc.$(OBJEXT): mozilla/npvlc_rc.rc
  673.     $(WINDRES) --include-dir mozilla -i $< -o $@
  674. endif
  675. endif
  676.  
  677. ###############################################################################
  678. # Modules
  679. ###############################################################################
  680. MOSTLYCLEANFILES += $(PLUGIN_FILES)
  681. PLUGIN_FILES =
  682.  
  683. libvlcdir = $(libdir)/vlc
  684.  
  685. include Modules.am
  686.  
  687. ###############################################################################
  688. # Force rule
  689. ###############################################################################
  690. FORCE:
  691.